package com.alisls.shequtao.common.core.constant;

import lombok.Getter;

/**
 * @author Ke Wang
 */
@Getter
public enum ResultEnum {
    
    /*
     * 成功失败
     */
    SUCCESS(true, 10000, "操作成功！"),
    FAIL(false, 99999, "操作失败"),
    TIMEOUT(false, 10002, "请求超时"),

    /**
     * 权限
     */
    UNAUTHENTICATED(false, 10002, "您还未登录"),
    UNAUTHORISE(false, 10003, "权限不足"),
    SERVER_ERROR(false, 99999, "抱歉，系统繁忙，请稍后重试！"),

    /*
     * 用户操作返回码
     */
    USERNAME_OR_PASSWORD(false, 20001, "用户名或密码错误");

    /*
     * 权限操作返回码
     */

    /**
     * 默认成功编码
     */
    public static final Integer DEFAULT_SUCCESS_CODE = 10000;

    /**
     * 默认失败编码
     */
    public static final Integer DEFAULT_FAIL_CODE = 99999;

    /**
     * 操作是否成功
     */
    private boolean success;

    /**
     * 操作代码
     */
    private int code;

    /**
     * 提示信息
     */
    private String message;

    /**
     * 构造函数
     * @param success 是否成功
     * @param code  操作码
     * @param message 操作结果信息
     */
    ResultEnum(boolean success, int code, String message) {
        this.success = success;
        this.code = code;
        this.message = message;
    }

}
